package com.ruoyi.system.domain;

import com.ruoyi.common.annotation.Excels;
import com.ruoyi.common.core.domain.entity.SysDept;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 项目信息对象 appmanager
 * 
 * @author yaozh
 * @date 2024-01-09
 */
public class Appmanager extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 项目id */
    @Excel(name = "项目数据库编号")
    private Long appid;

    /** 项目名称 */
    @Excel(name = "项目数据库名称")
    private String appName;

    /** 项目ip地址，采集服务IP地址 */
    @Excel(name = "项目节点IP地址")
    private String ipaddr;

    /** 项目端口，采集服务端口 */
    @Excel(name = "项目节点端口")
    private String appport;

    /** 项目类型ID，参考表apptype的ID */
    private Long apptypeid;
    @Excels({
            @Excel(name = "项目类型", targetAttr = "apptypename", type = Excel.Type.EXPORT)
    })
    private Apptype appType;

    /** 项目图片 */
    @Excel(name = "项目用户")
    private String appimg;

    /** 项目说明，项目备注 */
    @Excel(name = "项目名称")
    private String appexplain;

    /** 项目状态，项目是否初始化，0未初始化，1初始化 */
    @Excel(name = "项目状态", readConverterExp = "0=未初始化,1=已初始化")
    private String appstate;

    /** 项目是否放入回收站/数据状态（0正常/未放入回收站，就是未删除，1删除/放入回收站），0正常，1删除 */
    @Excel(name = "是否关闭", readConverterExp = "0=正常,1=删除")
    private String state;

    /** 项目所属省份 */
    @Excel(name = "所属省份")
    private String region;

    /** 项目所属城市 */
    @Excel(name = "所属城市")
    private String city;

    /** 经度 */
    @Excel(name = "经度")
    private String longitude;

    /** 纬度 */
    @Excel(name = "纬度")
    private String latitude;

    /** 项目简介，项目说明 */
    @Excel(name = "项目简介")
    private String appIntroduction;

    /** 所属客户 */
    @Excel(name = "所属客户")
    private String customer;

    /** 运行状态,0已停止,1运行中 */
    @Excel(name = "运行状态", readConverterExp = "0=已停止,1=运行中")
    private Long runStatus;

    /** 所属部门 */
    private Long departmentId;
    @Excels({
            @Excel(name = "部门名称", targetAttr = "deptName", type = Excel.Type.EXPORT),
            @Excel(name = "部门负责人", targetAttr = "leader", type = Excel.Type.EXPORT)
    })
    private SysDept dept;

    /** 3D模型地址 */
    @Excel(name = "3D模型地址")
    private String modelIp;

    /** 2D模型地址 */
    @Excel(name = "2D模型地址")
    private String model2dIp;

    /** 2D模型中绑定的变量 */
    private String model2dDataid;

    private Integer control;

    public void setAppid(Long appid) 
    {
        this.appid = appid;
    }

    public Long getAppid() 
    {
        return appid;
    }
    public void setAppName(String appName) 
    {
        this.appName = appName;
    }

    public String getAppName() 
    {
        return appName;
    }
    public void setIpaddr(String ipaddr) 
    {
        this.ipaddr = ipaddr;
    }

    public String getIpaddr() 
    {
        return ipaddr;
    }
    public void setAppport(String appport) 
    {
        this.appport = appport;
    }

    public String getAppport() 
    {
        return appport;
    }
    public void setApptypeid(Long apptypeid) 
    {
        this.apptypeid = apptypeid;
    }

    public Long getApptypeid() 
    {
        return apptypeid;
    }

    public Apptype getAppType() {
        return appType;
    }

    public void setAppType(Apptype appType) {
        this.appType = appType;
    }

    public void setAppimg(String appimg) 
    {
        this.appimg = appimg;
    }

    public String getAppimg() 
    {
        return appimg;
    }
    public void setAppexplain(String appexplain) 
    {
        this.appexplain = appexplain;
    }

    public String getAppexplain() 
    {
        return appexplain;
    }
    public void setAppstate(String appstate) 
    {
        this.appstate = appstate;
    }

    public String getAppstate() 
    {
        return appstate;
    }
    public void setState(String state) 
    {
        this.state = state;
    }

    public String getState() 
    {
        return state;
    }
    public void setRegion(String region) 
    {
        this.region = region;
    }

    public String getRegion() 
    {
        return region;
    }
    public void setCity(String city) 
    {
        this.city = city;
    }

    public String getCity() 
    {
        return city;
    }
    public void setLongitude(String longitude) 
    {
        this.longitude = longitude;
    }

    public String getLongitude() 
    {
        return longitude;
    }
    public void setLatitude(String latitude) 
    {
        this.latitude = latitude;
    }

    public String getLatitude() 
    {
        return latitude;
    }
    public void setAppIntroduction(String appIntroduction) 
    {
        this.appIntroduction = appIntroduction;
    }

    public String getAppIntroduction() 
    {
        return appIntroduction;
    }
    public void setCustomer(String customer) 
    {
        this.customer = customer;
    }

    public String getCustomer() 
    {
        return customer;
    }
    public void setRunStatus(Long runStatus) 
    {
        this.runStatus = runStatus;
    }

    public Long getRunStatus() 
    {
        return runStatus;
    }
    public void setDepartmentId(Long departmentId) 
    {
        this.departmentId = departmentId;
    }

    public Long getDepartmentId() 
    {
        return departmentId;
    }
    public void setModelIp(String modelIp) 
    {
        this.modelIp = modelIp;
    }

    public String getModelIp() 
    {
        return modelIp;
    }
    public void setModel2dIp(String model2dIp) 
    {
        this.model2dIp = model2dIp;
    }

    public String getModel2dIp() 
    {
        return model2dIp;
    }
    public void setModel2dDataid(String model2dDataid) 
    {
        this.model2dDataid = model2dDataid;
    }

    public String getModel2dDataid() 
    {
        return model2dDataid;
    }

    public SysDept getDept()
    {
        return dept;
    }

    public void setDept(SysDept dept)
    {
        this.dept = dept;
    }

    public Integer getControl() {
        return control;
    }
    public void setControl(Integer control) {
        this.control = control;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("appid", getAppid())
            .append("appName", getAppName())
            .append("ipaddr", getIpaddr())
            .append("appport", getAppport())
            .append("apptypeid", getApptypeid())
            .append("appimg", getAppimg())
            .append("appexplain", getAppexplain())
            .append("appstate", getAppstate())
            .append("state", getState())
            .append("region", getRegion())
            .append("city", getCity())
            .append("longitude", getLongitude())
            .append("latitude", getLatitude())
            .append("appIntroduction", getAppIntroduction())
            .append("customer", getCustomer())
            .append("runStatus", getRunStatus())
            .append("departmentId", getDepartmentId())
            .append("createTime", getCreateTime())
            .append("modelIp", getModelIp())
            .append("model2dIp", getModel2dIp())
            .append("model2dDataid", getModel2dDataid())
            .toString();
    }
}
